$(function(){
    $("input:button, input:submit", "#div_corpo").each(function(){
       var element = $(this);
       if (element.prop("disabled")){
           element.addClass("botao_desabilitado");
       }else{
           element.addClass("botao_habilitado");
       }

       var mouse_up = function(evt){
           if ($(document).data("elem_clicado")){
               var element_evt = $($(document).data("elem_clicado"));
               if (! element_evt.prop("disabled")){
                   if (element_evt.hasClass("botao_clicado")){
                       element_evt.removeClass("botao_clicado");
                       element_evt.addClass("botao_hover");
                   }
                   $(document).unload(mouse_up);
                   $(document).removeData("elem_clicado");
               }
           }
       }
       element.mousedown(function(evt){
           var element_evt = $(evt.target);
           if (! element_evt.prop("disabled")){
               element_evt.removeClass("botao_hover");
               element_evt.removeClass("botao_habilitado");
               element_evt.addClass("botao_clicado");
               $(document).data("elem_clicado", evt.target);
               $(document).mouseup(mouse_up);
           }
       });
       element.mouseout(function(evt){
           if ($(document).data("elem_clicado") && $(document).data("elem_clicado") == evt.target){
               var element_evt = $($(document).data("elem_clicado"));
               if (! element_evt.prop("disabled")){
                   element_evt.removeClass("botao_clicado");
                   element_evt.addClass("botao_habilitado");
               }
           }else if (! $(evt.target).prop("disabled")){
               $(evt.target).removeClass("botao_hover");
               $(evt.target).addClass("botao_habilitado");
           }
           
       });
       element.mouseenter(function(evt){
           if ($(document).data("elem_clicado") && $(document).data("elem_clicado") == evt.target ){
               var element_evt = $($(document).data("elem_clicado"));
               if (! element_evt.prop("disabled")){
                   element_evt.removeClass("botao_habilitado");
                   element_evt.addClass("botao_clicado");
               }
           }else if (! $(evt.target).prop("disabled")){
               $(evt.target).removeClass("botao_habilitado");
               $(evt.target).addClass("botao_hover");
           }
       });
    });
});

function desabilitaBotao(identificador){
   $(identificador).each(function(){
       $(this).removeClass("botao_habilitado");
       $(this).addClass("botao_desabilitado");
       $(this).prop("disabled", true);
   });
}

function habilitaBotao(identificador){
   $(identificador).each(function(){
       $(this).removeClass("botao_desabilitado");
       $(this).addClass("botao_habilitado");
       $(this).prop("disabled", false);
   });
}